package org.rbac.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.rbac.serv.GroupServices;
import org.rbac.vo.ActionReturn;
import org.rbac.vo.Group;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

/**
 * 
*  <pre>    
* 类名称：UserAction 
* 类描述：   
* 创建人：陈国祥   (kingschan)
* 创建时间：2014-9-21 下午9:19:07   
* 修改人：Administrator   
* 修改时间：2014-9-21 下午9:19:07   
* 修改备注：   
* @version V1.0
* </pre>
 */
@Controller
@RequestMapping(value="/group")
public class GroupAction {
	
	
	
	@Autowired
	private GroupServices groupserv;
	
	
   /**
    * 
    * @Title: editGroup 
    * @Auther:KAN
    * @Description: TODO(组织机构修改) 
    * @param @param g
    * @param @param reponse
    * @param @return 设定文件 
    * @return String 返回类型 
    * @throws
    */
    @RequestMapping(value="/edit")
    @ResponseBody
    public String editGroup(@ModelAttribute Group g ){
    	 ActionReturn  msg=new ActionReturn(false,"");
    	 try {
    		 groupserv.editGroup(g);
    		 msg.setStatus(true);
		} catch (Exception e) {
			e.printStackTrace();
			msg.setMsg(e.toString());
		}
    	 return msg.toString();
    }
    
    /**
     * 
     * @Title: modifyGroup 
     * @Auther:KAN
     * @Description: TODO(组织结构修改) 
     * @param @param g
     * @param @param reponse 设定文件 
     * @return void 返回类型 
     * @throws
     */
    @RequestMapping(value="/modify")
    public void modifyGroup(@ModelAttribute Group g,HttpServletResponse reponse){
    	 try {
    		 groupserv.editGroup(g);
			reponse.getWriter().write("{\"status\":\"success\"}");
		} catch (Exception e) {
			e.printStackTrace();
		}
    }

    /**
     * 
     * @Title: group 
     * @Auther:KAN
     * @Description: TODO   组织结构视图
     * @param  req
     * @param  rep
     * @param  设定文件 
     * @return ModelAndView 返回类型 
     * @throws
     */
    @RequestMapping(value="/list")
    public ModelAndView group(HttpServletRequest req,HttpServletResponse rep){
        ModelAndView mav=new ModelAndView();  
        mav.setViewName("/rbac/group"); 
        return mav;
    }

    /**
     * @Title: deleteGroup 
     * @Auther:KAN
     * @Description: TODO(组织机构删除) 
     * @param @param ids
     * @param @return 设定文件 
     * @return String 返回类型 
     * @throws
     */
    @RequestMapping("/delete")
    @ResponseBody
    public String deleteGroup(String ids){
    	ActionReturn  msg=new ActionReturn(false,"");
    	try{
	    	String[] arr=ids.split(",");
	    	for(String id:arr){
	    		groupserv.deleteGroup(id);
	    	}
	    	msg.setStatus(true);
    	}catch(Exception e){
    		msg.setMsg(e.toString());
    	}
    	return msg.toString();
    }
    
    /**
     * @Title: deleteGroup 
     * @Auther:KAN
     * @Description: TODO(组织机构删除) 
     * @param @param ids
     * @param @return 设定文件 
     * @return String 返回类型 
     * @throws
     */
    @RequestMapping("/disable")
    @ResponseBody
    public String disableGroup(String ids){
    	ActionReturn  msg=new ActionReturn(false,"");
    	try{
	    	String[] arr=ids.split(",");
	    	for(String id:arr){
	    		groupserv.disableGroup(id);
	    	}
	    	msg.setStatus(true);
    	}catch(Exception e){
    		msg.setMsg(e.toString());
    	}
    	return msg.toString();
    }
    
}
